attribute 
const 
uniform
varying
break
continue
do
for
while
if
else
in
out
inout
float
int
void
bool
true
false
discard
return
mat2
mat3
mat4
mat2x2
mat3x3
mat4x4
mat2x3
mat3x2
mat2x4
mat4x2
mat3x4
mat4x3
vec2
vec3
vec4
ivec2
ivec3
ivec4
uvec2
uvec3
uvec4
bvec2
bvec3
bvec4
sampler1D
sampler2D
sampler3D
samplerCube
sampler1DShadow
sampler2DShadow
struct

asm
class
union
enum
typedef
template
this
packed
goto
switch
default
inline
noinline
volatile
public
static
extern
external
interface
long
short
double
half
fixed
unsigned
input
output
sampler2DRect
sampler3DRect
sampler2DRectShadow
sizeof
cast
namespace
using

layout 
location
smooth
flat
noperspective
centroid
invariant
lowp
mediump
highp
precision
patch
sample
subroutine

hvec2
hvec3
hvec4
fvec2
fvec3
fvec4
dvec2
dvec3
dvec4

on

final
abstract
limited
access
self

uchar
schar
uint
sint

int8
int16
int32
int64

sint8
sint16
sint32
sint64

uint8
uint16
uint32
uint64

float16
float32
float64

quat
hquat
fquat
dquat

handle
handle8
handle16
handle32
handle64

flag
flag8
flag16
flag32
flag64

import
export

hmat2
hmat3
hmat4

fmat2
fmat3
fmat4

dmat2
dmat3
dmat4

hmat2x3
hmat3x2
hmat2x4
hmat4x2
hmat3x4
hmat4x3

fmat2x3
fmat3x2
fmat2x4
fmat4x2
fmat3x4
fmat4x3

dmat2x3
dmat3x2
dmat2x4
dmat4x2
dmat3x4
dmat4x3

null
pi
epsilon
infinite
self

byte
word
dword
qword

new_object
new_array
delete_object
delete_array

int8
int16
int32
int64

i8
i16
i32
i64

i8vec2
i8vec3
i8vec4

i16vec2
i16vec3
i16vec4

i32vec2
i32vec3
i32vec4

i64vec2
i64vec3
i64vec4

uint8
uint16
uint32
uint64

u8
u16
u32
u64

u8vec2
u8vec3
u8vec4

u16vec2
u16vec3
u16vec4

u32vec2
u32vec3
u32vec4

u64vec2
u64vec3
u64vec4

float16
float32
float64

f16
f32
f64

f16vec2
f16vec3
f16vec4

f32vec2
f32vec3
f32vec4

f64vec2
f64vec3
f64vec4

f16mat2
f16mat3
f16mat4

f16mat2x3
f16mat2x4
f16mat3x2
f16mat3x4
f16mat4x2
f16mat4x3

f32mat2
f32mat3
f32mat4

f32mat2x3
f32mat2x4
f32mat3x2
f32mat3x4
f32mat4x2
f32mat4x3

f64mat2
f64mat3
f64mat4

f64mat2x3
f64mat2x4
f64mat3x2
f64mat3x4
f64mat4x2
f64mat4x3

f16quat
f32quat
f64quat

bool1
bool2
bool3
bool4

bool1x1
bool2x2
bool3x3
bool4x4

bool2x3
bool2x4
bool3x2
bool3x4
bool4x2
bool4x3

int1
int2
int3
int4

int1x1
int2x2
int3x3
int4x4

int2x3
int2x4
int3x2
int3x4
int4x2
int4x3

half1
half2
half3
half4

half2x2
half3x3
half4x4

half2x3
half2x4
half3x2
half3x4
half4x2
half4x3

float1
float2
float3
float4

float1x1
float2x2
float3x3
float4x4

float2x3
float2x4
float3x2
float3x4
float4x2
float4x3

double1
double2
double3
double4

double1x1
double2x2
double3x3
double4x4

double2x3
double2x4
double3x2
double3x4
double4x2
double4x3
